/*
   @Copyright:LibreOJ
   @Author:   tjyemail
   @Problem:  https://loj.ac/problem/100
   @Language: C++
   @Datetime: 20-07-31 09:07
   */
// time 530ms
#include <bits/stdc++.h>
using namespace std;
#define MAX 502
#define MOD 1000000007

int A[MAX][MAX], B[MAX][MAX];

int main()
{
	int n, p, m;
	scanf("%d %d %d", &n, &p, &m);
	for(int i=0; i<n; ++i) {
		for(int j=0; j<p; ++j)
			scanf("%d", &A[i][j]);
	}
	for(int i=0; i<p; ++i) {
		for(int j=0; j<m; ++j)
			scanf("%d", &B[i][j]);
	}
	for(int i=0; i<n; ++i) {
		for(int j=0; j<m; ++j) {
			long long c=0;
			for(int k=0; k<p; ++k)
				c+=1LL*A[i][k]*B[k][j]%MOD;
			printf("%lld ", (c%MOD+MOD)%MOD);
		}
		printf("\n");
	}
	return 0;
}
